#exampleList {
  list-style: none;
  border-top: 1px solid #ddd;
  margin: 0;
  padding: 0;
  overflow-y: scroll;
  overflow-x: auto;
}

#exampleList .example {
  border-bottom: 1px solid #eee;
  color: #999;
  display: flex;
  margin: 0;
  white-space: nowrap;
}

#exampleList .example code {
  border-left: 4px solid #bbb;
  cursor: default;
  flex: 1;
  overflow: hidden;
  padding: 6px 4px 6px 8px;
  text-overflow: ellipsis;

  display: inline-flex;

  /* Weirdly, it won't shrink smaller than its content unless we give it an explicit width. */
  width: 1px;
}

#exampleList .example.fail code {
  border-left: 4px solid #d44950;
}

#exampleList .example.pass code {
  border-left: 4px solid #58B958;
}

#exampleList .example.selected {
  color: #333;
  background-color: #f7f7f7;
}

#exampleList code {
  font-family: Menlo, Monaco, monospace;
  font-size: 12px;
}

#exampleList .example .delete, #exampleList .example .sign {
  padding: 0 4px 0 4px;
  cursor: default;
  display: block;
}

#exampleList .example .delete {
  padding: 4px;
  color: #d44950;
  visibility: hidden;
}

@media screen and (min-color-index:0) and(-webkit-min-device-pixel-ratio:0) {
  @media {
    /* Safari 6.1+ ONLY */
    #exampleList .example .sign {
      padding-top: 6px;
      font-size: 12px;
    }
  }
}

/* Firefox 1+ only */
#exampleList .example .sign, x:-moz-any-link {
  padding-top: 4px;
}

#exampleList .example:hover {
  background-color: #f7f7f7;
}

#exampleList .example:hover .delete {
  visibility: visible;
}

#exampleList code:empty::before {
  content: '\a0';  /* Insert &nbsp; to keep the correct height. */
}

/* Additions for example generation */

#examplesNeededDrawer {
  float: right;
  cursor: pointer;
  color: hsl(0, 0%, 30%);
  font-weight: normal;
}

#examplesNeededDrawer .indicator {
  transition: color 0.5s ease;
}

#examplesNeededDrawer .indicator.active {
  color: hsl(219, 100%, 70%);
}

#exampleRequestContainer {
  width: 0px;
}

.exampleGeneratorUI.hidden {
  visibility: hidden;
}

#exampleRequestContainer.hidden {
  flex-grow: 0 !important;
}

#exampleRequests {
  border-top: 1px solid #ddd;
}

#exampleRequests ul {
  list-style: none;
  padding: 0px;
}

#exampleRequests ul textarea {
  font-family: Menlo, Monaco, monospace;
  font-size: 12px;
  display: block;
  border: none;
  border-bottom: 1px solid hsl(0, 0%, 10%);
  margin: 5px 10px 0px 10px;
  text-align: left;
  height: 20px;
  width: 95%;
}

#exampleRequests ul textarea.invalid {
  background-color: #FDE0E0 !important;
}

#exampleRequests ul textarea::-webkit-input-placeholder, /* Chrome/Opera/Safari */
#exampleRequests ul textarea::-moz-placeholder, /* Firefox 19+ */
#exampleRequests ul textarea:-ms-input-placeholder, /* IE 10+ */
#exampleRequests ul textarea:-moz-placeholder { /* Firefox 18- */
  margin-left: 15px;
  text-align: left;
}

.requestContainer {
  height: 100%;
  width: 100%;
  position: absolute;
}

#addExampleButton {
  /*position: absolute;*/
  right: 12px;
  top: 12px;
}

/* Prevent things from looking terrible when zoomed in (looking at you, Chrome). */
@media screen and (-webkit-min-device-pixel-ratio: 1.01) {
  #addExampleButton {
    background-color: white;
    border: 1px solid #ccc;
    border-radius: 3px;
  }
}

.selected span.startRule {
  color: hsl(0, 0%, 75%);
}

span.startRule {
  margin-left: 10px;
  flex: 0.5;
  color: hsl(0, 0%, 85%);
}

span.code {
  flex: 1;
}


#neededExamples > ul {
  list-style-type: none;
  font-family: Helvetica, Arial, sans-serif;
  font-size: 12px;
  padding-left: 0px;
}

#neededExamples > ul > li {
  text-align: center;
}

option.needed {
  color: hsl(38, 86%, 55%);
  font-weight: bold;
}

#neededExamples select option {
  text-align: center;
}

#neededExamples select {
  text-align: center;
  background: none;
  border: none;
  border-bottom: 1px solid hsl(0, 0%, 0%);
}

#neededExamples {
  padding: 7px;
}

#exampleBottom {
  display: flex;
  flex-direction: row;
}

#exampleBottom > .editorWrapper {
  flex: 1;
  position: relative;
}

#exampleBottom > #neededExamples {
  z-index: 10;
}
